<?php
/**
  * classe definissant les boxs de type htmlnav
  * 
  * Developpee par Rodrigue LE GALL
  * sous licence GPL
  * Objectif : Ces box permettent d'afficher les information de navigation d'un page
  * lors de l'appel de la fonction html
  */
require_once(get_path_module("environnement.box"));

class htmlnav extends box
{
    /**
      * $needenv permet de specifier si la methode construct a besoin de l'objet environnement
      * 0 : pas besoin
      * 1 : besoin
      */
    var $needenv = 0;
    
    function construct(){
        $TPLN = new TPLN();
        $TPLN->Open(get_env_path().$this->getenvironnement().'/'.$this->gettemplate());
        // on recupere le bloc liste pour plus tard
        $bloc = str_replace("\n", "", addslashes($TPLN->GetBlocInFile("liste")));
        
        // on inclu du code php pour afficher les infos contenues dans
        // $html_titre
        // $html_path
        // $html_compteur
        // $html_description
        if($TPLN->ItemExists("titre")){
        	$TPLN->Parse("titre","<?php echo \$html_titre;?>");
        }
        if($TPLN->ItemExists("compteur")){
        	$TPLN->Parse("compteur","<?php echo \$html_compteur;?>");
        }
        if($TPLN->ItemExists("description")){
          	$TPLN->Parse("description","<?php echo \$html_description;?>");
        }
        if($TPLN->ItemExists("fichier")){
          	$TPLN->Parse("fichier","<?php \$rep = explode(\"/\",\$html_path);\necho \$rep[count(\$rep)-1];?>");
        }
        
        //on eclate le path et on injecte un lien pour chaque directory
        $output_bloc = "";
        $output_bloc .="<?php\n";
        $output_bloc .="\$rep = explode(\"/\",\$html_path);\n";
        $output_bloc .="\$my_path = \"\";\n";
        $output_bloc .="for(\$i=0;\$i<(count(\$rep)-1);\$i++){\n";
        $output_bloc .="\$my = str_replace(\"{lien}\", \"?op=html&amp;code=\$my_path\".\$rep[\$i].\"/\", \"$bloc\");\n";
        $output_bloc .="\$my = str_replace(\"{target}\", \"_self\", \$my);\n";
        $output_bloc .="\$my = str_replace(\"{texte}\", \$rep[\$i], \$my);\n";
        $output_bloc .="echo stripslashes(\$my).\"\\n\";\n";
        $output_bloc .="\$my_path .= \$rep[\$i].\"/\";\n";
        $output_bloc .="}\n";
        $output_bloc .="?>\n";
        $TPLN->ParseBloc("liste",$output_bloc);
        		
		$this->prompt = "<?php global \$op,\$html_titre,\$html_path,\$html_compteur, \$html_description;\n";
		$this->prompt.="if(\$op=='html' || \$op=='htmlnav'){?>\n";
		$this->prompt.= $TPLN->Output();
		$this->prompt.= "<?php } ?>\n";
    }
}
?>
